Technical Q&A QA1244
QuickTime Error -2127 qtNetworkAlreadyAllocatedErr Explained


Q: HTTP 経由でメディアファイル(JPG、MOV、GIF など)をダウンロードするのに QuickTime URL データハンドラを使用しています。

このとき特定のコンピュータでは、エラー -2127 qtNetworkAlreadyAllocatedErr を受け取ります。このエラーは何を意味するのでしょうか?

A: このエラーは、QuickTime のシステム環境設定でのユーザの接続速度設定が、一度に複数のムービーに対するネットワークセッションの割り当てを禁止しており(基本的に、接続速度設定がモデム速度の 1 つに設定されている場合)、あるエンティティが、ネットワークの使用の許可が割り当てられているムービーの範囲外でネットワークセッションを割り当てようとしているときに起こります。

QuickTime のシステム環境設定で「複数ストリーミングを同時に再生」がチェックされているコンピュータでは、この問題は起きません。

このエラーを避けるための解決策法は、DataHSetTimeHints 関数を使って、データハンドラに対して、QuickTime から帯域幅の許可を要求せずに処理を開始してネットワークを使うように指示することです。以下は、この方法を示すコードです。



リスト 1. 処理前にネットワークの帯域幅を要求しないようにデータハンドラに指示する方法


#include <QuickTime/QuickTime.h>



ComponentResult result;

            

// 処理前にネットワークの帯域幅を要求しないように
// データハンドラに指示する

result = DataHSetTimeHints(dataHandler,

                     kDataHSetTimeHintsSkipBandwidthRequest,

                     kQTRealTimePriority,

                     600,         /* スケール */

                     0,           /* 最小時間 */

                     0x7fffffff); /* 最大時間 = 無制限 */





[2003 年 3 月 20 日]